define(function(require,exports,module) {
    var myPub = require('./public');
    var oGoodsList = $('.js_goodsList');
    var oWrap = $('.js_wrap');
    var oSegmentation = $('.js_segmentation');          // 猜你喜欢标题
    var oLikeGoods = $('.js_likeGoods');                // 猜你喜欢区域
    var oNoMoregBtn = $('.js_noMoregBtn');              // 没有更多了按钮
    var oLoadingBtn = $('.js_loadingBtn');              // 加载中按钮
    var guessLikeUrl = '/shop/goods/guessLike';         // 猜你喜欢商品列表地址
    // var oContain = $('.js_contain');
    var lazLoading = new myPub.lazLoadingImg();

    var addMore = {
        limit:20,               // 每次加载数据数目
        getData:[],             // 获取接口返回的数据
        pagearr:1,              // 当前页码数
        start:0,                // 开始数据
        bLoadOff:true,          // 加载开关
        scrollTime:null,        // 滚动定时器
        loadNo:0,
        // 获取数据
        addAjax:function (start,limit,bAddLoad,fn) {
            var _this =this;
            var sendNo = '';
            if(bAddLoad){
                sendNo = {'start': start, 'limit': limit,'isFirst':1}
            }else{
                sendNo = {'start': start, 'limit': limit}
            }
            if(_this.loadNo < 5){
                G_JSON_GET(guessLikeUrl,sendNo,function (data) {
                    _this.loadNo++;
                    _this.getData = data;
                    // 没有数据
                    if(_this.getData.length < 0 && _this.pagearr < 2){
                        oNoMoregBtn.show();
                        oLoadingBtn.hide();
                        _this.bLoadOff = false;
                        oSegmentation.hide();
                        oLikeGoods.hide();
                        return
                    }
                    if(_this.pagearr >= 1){
                        if(_this.getData.length == 0){
                            oNoMoregBtn.show();
                            oLoadingBtn.hide();
                            _this.bLoadOff = false;
                            return
                        }
                    }
                    // 拼接页面
                    _this.addHtml(_this.getData);

                    if(_this.getData.length < _this.limit){
                        oNoMoregBtn.show();
                        oLoadingBtn.hide();
                        _this.bLoadOff = false;
                    }
                    data = null;
                    if(fn)fn();
                },function () {},function () {})
            }else{
                oNoMoregBtn.show();
                oLoadingBtn.hide();
                _this.bLoadOff = false;
            }

        },
        // 滚动页面
        ScrollPage: function () {
            var _this = this;
            var minScrHeight = 200;

            oWrap.on('scroll',function () {

                var afterScroll = $(this).scrollTop();
                clearTimeout(_this.scrollTime);
                _this.scrollTime = setTimeout(function () {
                    // _this.ShowGoTop(_scrollTop);
                    if (oWrap[0].scrollHeight - afterScroll - oWrap.height() < minScrHeight) {
                        // 滚动加载产品
                        // 设置翻页到最后一页 返回
                        if(!addMore.bLoadOff) {
                            addMore.dataJson = null;
                            return;
                        }

                        // 滚动底部页数增加 起始数据等于上次结束数据  新的结束等于页数*页码数
                        _this.start = _this.limit*_this.pagearr;
                        _this.pagearr++;
                        _this.addAjax(_this.start, _this.limit, false);
                    }
                }, 300);

            });
        },
        // 拼接数据
        addHtml:function (data) {
            var thtml = '';
            for(var i = 0;i < data.length;i++){
                var dataItem = data[i];
                var quanpeiHtml = '';
                //如果有全赔图标则显示
                if(dataItem.firstGueeImagePath) {
                    quanpeiHtml = '<div class="quanpei"><img src="'+dataItem.firstGueeImagePath+'" alt="" /></div>'
                }
                thtml +=
                    '<li>'+
                    '   <a class="BoxSelf" href="'+BASE_URL+'/h/goodspay/goodsView/'+dataItem.goodsSn+'" requestid="'+dataItem.requestId+'">'+
                    '       <figure>'+
                    '           <img class="js_lazyImg" data-echo="'+HTTP_IMAGE_URL+ dataItem.showImage + smallImgArg200+'" src="'+BASE_URL+'/static_v4/image/loadImg.jpg">'+
                    quanpeiHtml+
                    '       </figure>'+
                    '       <aside class="priceArea VBox Bflex1">'+
                    '           <div class="Bflex1 priceArea_name">'+
                    '               <h4>'+dataItem.name+'</h4>'+
                    '               <p class="smallFont_tip">'+dataItem.productName+'</p>'+
                    '           </div>'+
                    '           <div class="priceArea_price">'+
                    '               <p class="HBox priceAreaBox">'+
                    '                   <span class="goodsPrice">￥'+dataItem.salePrice+'</span>'+
                    '               </p>'+
                    '           </div>'+
                    '       </aside>'+
                    '   </a>'+
                    '   <p class="addCar js_addCar" pid="'+dataItem.productId+'"><em class="icon-shopcar_small"></em></p>'+
                    '</li>';
            }
            oGoodsList.append(thtml);
            lazLoading.DestroyLazLoadingImg();
            lazLoading.AddLazLoadingImg(oWrap[0]);
        }
    };
    addMore.addAjax(addMore.start, addMore.limit,true);
    addMore.ScrollPage();
});